// 引入用来发送请求的方法
import { request } from "../../request/index.js"

// pages/goods_list/goods_list.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs:[
      {
        id:0,
        value:"综合",
        isActive:true
      },
      {
        id:1,
        value:"销量",
        isActive:false
      },
      {
        id:2,
        value:"价格",
        isActive:false
      }
    ],
    goodsList:[]
  },
// 接口要的参数
  QueryParams:{
    query:"",
    cid:"",
    pagenum:1,
    pagesize:10
  },
  // 总页数
  totalPages:1,
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.QueryParams.cid = options.cid||""  
    this.QueryParams.query = options.query||""  
    this.getGoodsList()
  },

  // 获取商品列表数据
  async getGoodsList(){
    const res= await request({url:"/goods/search",data:this.QueryParams})
    // console.log(res);
    const total = res.total
    // 计算总页数
    this.totalPages=Math.ceil(total/this.QueryParams.pagesize)
    // console.log(this.totalPages);
    this.setData({
      goodsList:[...this.data.goodsList,...res.goods]
    })
    // 关闭下拉刷新
    wx.stopPullDownRefresh()
      
  },
  // 导航点击事件
  handleTabsItemChang(e){
    // console.log(e);
    const {index} =e.detail
    let {tabs} = this.data
    tabs.forEach((v,i) => i==index?v.isActive=true:v.isActive=false )
    this.setData({
      tabs
    })
  },
  // 页面上拉刷新事件
  onReachBottom(){
    // console.log("上拉刷新");
    // 判断有没有下一页数据
    if(this.QueryParams.pagenum>=this.totalPages){
      // console.log("没有下一页数据");
      wx.showToast({title:'没有下一页数据了'})
    }else{
      // console.log("有下一页数据");
      this.QueryParams.pagenum++
      this.getGoodsList()
    }
  },
  // 下拉刷新事件
  onPullDownRefresh(){
    // console.log("刷新");
    this.setData({
      goodsList:[]
    }),
    this.QueryParams.pagenum=1,
    this.getGoodsList()
  }
})